You are here: Statements and Functions > Preemptor()
Syntax samples
PREEMPTOR()
Var1=PREEMPTOR()
Identifies whether a downtime or entity is making the preemptive request. The function returns the name index number of the preempting entity; however, it returns a 0 if the preemptor is a downtime.
Operation logic defined as a preemptive process.
Example
Workers may process an entity, bracket, at one of two locations, Punch_1 or Punch_2. You may preempt the bracket at Punch_1 by either an entity with a preemptive priority or a location shift downtime with a preemptive priority. If an entity preempts the bracket, workers send the bracket to Punch_2 to finish processing. Punch_1 and Punch_2 are on the same shift, and are scheduled to go off-shift at the same time. Therefore, if a shift downtime preempts the bracket at Punch_1, the bracket would not be able to go to Punch_2. In this case, the bracket is sent to a location called Punch_Wait where it waits for Punch_1 to come back on-shift. The PREEMPTOR() function determines whether an entity or shift downtime preempts the bracket.
Process Table
Entity |
Location |
Operation (min) |
---|---|---|
Bracket |
Punch_1 |
WAIT 3 min |
Bracket* |
Punch_1 |
IF PREEMPTOR()>0 THEN ROUTE 1 ELSE ROUTE 2 |
* Preemptive Process Record
Routing Table
Blk |
Output |
Destination |
Rule |
Move Logic |
---|---|---|---|---|
1 |
Bracket |
Inspect |
FIRST 1 |
|
1
|
Bracket |
Punch_2 |
FIRST 1 |
|
2
|
Bracket |
Punch_Wait |
FIRST 1 |
|